A computer system typically includes a commanding system that allows a user's input to the computer to be connected to an action performed by the computer in response to the input. One example of commanding is the connection of the input keystroke “ctrl-c” to the action of copying of the selected material to the clipboard of the computer. An existing system that handles commanding is the Microsoft Foundation Class (MFC) Library. Commanding systems such as the MFC Library are implemented on an application-by-application basis. In other words, in existing computer systems, commanding is handled by each individual application.
An application is a program designed to assist a user of a computer system in the performance of a specific task. One example of an application is a word processing application, such as the WordPad application provided as an accessory application to various versions of the WINDOWS® brand operating systems, which were developed and distributed by Microsoft Corporation of Redmond, Wash. An application is created by translating (i.e., compiling) high-level object code, such as source code, into a lower-level code such as machine language (i.e., an executable) that can be run by the computer system.
Since, as noted above, commanding in existing computer systems is implemented as part of each application, it can be difficult to modify the commanding for a given application. For example, to modify the commanding for an application, it is necessary to modify the source code for the application and then to recompile the application into executable form for the modifications to commanding to take effect. Therefore, no easy method exists for modifying the commanding for a given application.